﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200151F RID: 5407
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class WorkbenchReforgeFormulaFuncInfo : IMessage<WorkbenchReforgeFormulaFuncInfo>, IMessage, IEquatable<WorkbenchReforgeFormulaFuncInfo>, IDeepCloneable<WorkbenchReforgeFormulaFuncInfo>, IBufferMessage
	{
		// Token: 0x1700441D RID: 17437
		// (get) Token: 0x0600F204 RID: 61956 RVA: 0x00286637 File Offset: 0x00284837
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<WorkbenchReforgeFormulaFuncInfo> Parser
		{
			get
			{
				return WorkbenchReforgeFormulaFuncInfo._parser;
			}
		}

		// Token: 0x1700441E RID: 17438
		// (get) Token: 0x0600F205 RID: 61957 RVA: 0x0028663E File Offset: 0x0028483E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return WorkbenchReforgeFormulaFuncInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700441F RID: 17439
		// (get) Token: 0x0600F206 RID: 61958 RVA: 0x00286650 File Offset: 0x00284850
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return WorkbenchReforgeFormulaFuncInfo.Descriptor;
			}
		}

		// Token: 0x0600F207 RID: 61959 RVA: 0x00286657 File Offset: 0x00284857
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public WorkbenchReforgeFormulaFuncInfo()
		{
		}

		// Token: 0x0600F208 RID: 61960 RVA: 0x00286660 File Offset: 0x00284860
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public WorkbenchReforgeFormulaFuncInfo(WorkbenchReforgeFormulaFuncInfo other) : this()
		{
			this.canFreeReforge_ = other.canFreeReforge_;
			this.uintReforgeNumValue_ = other.uintReforgeNumValue_;
			this.intReforgeNumValue_ = other.intReforgeNumValue_;
			this.freeReforgeNum_ = other.freeReforgeNum_;
			this.costData_ = ((other.costData_ != null) ? other.costData_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600F209 RID: 61961 RVA: 0x002866D0 File Offset: 0x002848D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public WorkbenchReforgeFormulaFuncInfo Clone()
		{
			return new WorkbenchReforgeFormulaFuncInfo(this);
		}

		// Token: 0x17004420 RID: 17440
		// (get) Token: 0x0600F20A RID: 61962 RVA: 0x002866D8 File Offset: 0x002848D8
		// (set) Token: 0x0600F20B RID: 61963 RVA: 0x002866E0 File Offset: 0x002848E0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool CanFreeReforge
		{
			get
			{
				return this.canFreeReforge_;
			}
			set
			{
				this.canFreeReforge_ = value;
			}
		}

		// Token: 0x17004421 RID: 17441
		// (get) Token: 0x0600F20C RID: 61964 RVA: 0x002866E9 File Offset: 0x002848E9
		// (set) Token: 0x0600F20D RID: 61965 RVA: 0x002866F1 File Offset: 0x002848F1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint UintReforgeNumValue
		{
			get
			{
				return this.uintReforgeNumValue_;
			}
			set
			{
				this.uintReforgeNumValue_ = value;
			}
		}

		// Token: 0x17004422 RID: 17442
		// (get) Token: 0x0600F20E RID: 61966 RVA: 0x002866FA File Offset: 0x002848FA
		// (set) Token: 0x0600F20F RID: 61967 RVA: 0x00286702 File Offset: 0x00284902
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int IntReforgeNumValue
		{
			get
			{
				return this.intReforgeNumValue_;
			}
			set
			{
				this.intReforgeNumValue_ = value;
			}
		}

		// Token: 0x17004423 RID: 17443
		// (get) Token: 0x0600F210 RID: 61968 RVA: 0x0028670B File Offset: 0x0028490B
		// (set) Token: 0x0600F211 RID: 61969 RVA: 0x00286713 File Offset: 0x00284913
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint FreeReforgeNum
		{
			get
			{
				return this.freeReforgeNum_;
			}
			set
			{
				this.freeReforgeNum_ = value;
			}
		}

		// Token: 0x17004424 RID: 17444
		// (get) Token: 0x0600F212 RID: 61970 RVA: 0x0028671C File Offset: 0x0028491C
		// (set) Token: 0x0600F213 RID: 61971 RVA: 0x00286724 File Offset: 0x00284924
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ItemCostData CostData
		{
			get
			{
				return this.costData_;
			}
			set
			{
				this.costData_ = value;
			}
		}

		// Token: 0x0600F214 RID: 61972 RVA: 0x0028672D File Offset: 0x0028492D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as WorkbenchReforgeFormulaFuncInfo);
		}

		// Token: 0x0600F215 RID: 61973 RVA: 0x0028673C File Offset: 0x0028493C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(WorkbenchReforgeFormulaFuncInfo other)
		{
			return other != null && (other == this || (this.CanFreeReforge == other.CanFreeReforge && this.UintReforgeNumValue == other.UintReforgeNumValue && this.IntReforgeNumValue == other.IntReforgeNumValue && this.FreeReforgeNum == other.FreeReforgeNum && object.Equals(this.CostData, other.CostData) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600F216 RID: 61974 RVA: 0x002867BC File Offset: 0x002849BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.CanFreeReforge)
			{
				num ^= this.CanFreeReforge.GetHashCode();
			}
			if (this.UintReforgeNumValue != 0U)
			{
				num ^= this.UintReforgeNumValue.GetHashCode();
			}
			if (this.IntReforgeNumValue != 0)
			{
				num ^= this.IntReforgeNumValue.GetHashCode();
			}
			if (this.FreeReforgeNum != 0U)
			{
				num ^= this.FreeReforgeNum.GetHashCode();
			}
			if (this.costData_ != null)
			{
				num ^= this.CostData.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600F217 RID: 61975 RVA: 0x0028685C File Offset: 0x00284A5C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600F218 RID: 61976 RVA: 0x00286864 File Offset: 0x00284A64
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600F219 RID: 61977 RVA: 0x00286870 File Offset: 0x00284A70
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.UintReforgeNumValue != 0U)
			{
				output.WriteRawTag(8);
				output.WriteUInt32(this.UintReforgeNumValue);
			}
			if (this.CanFreeReforge)
			{
				output.WriteRawTag(32);
				output.WriteBool(this.CanFreeReforge);
			}
			if (this.IntReforgeNumValue != 0)
			{
				output.WriteRawTag(40);
				output.WriteInt32(this.IntReforgeNumValue);
			}
			if (this.costData_ != null)
			{
				output.WriteRawTag(58);
				output.WriteMessage(this.CostData);
			}
			if (this.FreeReforgeNum != 0U)
			{
				output.WriteRawTag(96);
				output.WriteUInt32(this.FreeReforgeNum);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600F21A RID: 61978 RVA: 0x0028691C File Offset: 0x00284B1C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.CanFreeReforge)
			{
				num += 2;
			}
			if (this.UintReforgeNumValue != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.UintReforgeNumValue);
			}
			if (this.IntReforgeNumValue != 0)
			{
				num += 1 + CodedOutputStream.ComputeInt32Size(this.IntReforgeNumValue);
			}
			if (this.FreeReforgeNum != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.FreeReforgeNum);
			}
			if (this.costData_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.CostData);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600F21B RID: 61979 RVA: 0x002869B0 File Offset: 0x00284BB0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(WorkbenchReforgeFormulaFuncInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.CanFreeReforge)
			{
				this.CanFreeReforge = other.CanFreeReforge;
			}
			if (other.UintReforgeNumValue != 0U)
			{
				this.UintReforgeNumValue = other.UintReforgeNumValue;
			}
			if (other.IntReforgeNumValue != 0)
			{
				this.IntReforgeNumValue = other.IntReforgeNumValue;
			}
			if (other.FreeReforgeNum != 0U)
			{
				this.FreeReforgeNum = other.FreeReforgeNum;
			}
			if (other.costData_ != null)
			{
				if (this.costData_ == null)
				{
					this.CostData = new ItemCostData();
				}
				this.CostData.MergeFrom(other.CostData);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600F21C RID: 61980 RVA: 0x00286A54 File Offset: 0x00284C54
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600F21D RID: 61981 RVA: 0x00286A60 File Offset: 0x00284C60
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 32U)
				{
					if (num == 8U)
					{
						this.UintReforgeNumValue = input.ReadUInt32();
						continue;
					}
					if (num == 32U)
					{
						this.CanFreeReforge = input.ReadBool();
						continue;
					}
				}
				else
				{
					if (num == 40U)
					{
						this.IntReforgeNumValue = input.ReadInt32();
						continue;
					}
					if (num == 58U)
					{
						if (this.costData_ == null)
						{
							this.CostData = new ItemCostData();
						}
						input.ReadMessage(this.CostData);
						continue;
					}
					if (num == 96U)
					{
						this.FreeReforgeNum = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04005F80 RID: 24448
		private static readonly MessageParser<WorkbenchReforgeFormulaFuncInfo> _parser = new MessageParser<WorkbenchReforgeFormulaFuncInfo>(() => new WorkbenchReforgeFormulaFuncInfo());

		// Token: 0x04005F81 RID: 24449
		private UnknownFieldSet _unknownFields;

		// Token: 0x04005F82 RID: 24450
		public const int CanFreeReforgeFieldNumber = 4;

		// Token: 0x04005F83 RID: 24451
		private bool canFreeReforge_;

		// Token: 0x04005F84 RID: 24452
		public const int UintReforgeNumValueFieldNumber = 1;

		// Token: 0x04005F85 RID: 24453
		private uint uintReforgeNumValue_;

		// Token: 0x04005F86 RID: 24454
		public const int IntReforgeNumValueFieldNumber = 5;

		// Token: 0x04005F87 RID: 24455
		private int intReforgeNumValue_;

		// Token: 0x04005F88 RID: 24456
		public const int FreeReforgeNumFieldNumber = 12;

		// Token: 0x04005F89 RID: 24457
		private uint freeReforgeNum_;

		// Token: 0x04005F8A RID: 24458
		public const int CostDataFieldNumber = 7;

		// Token: 0x04005F8B RID: 24459
		private ItemCostData costData_;
	}
}
